Center-of-gravity method

For convex set 𝒮n\mathcal{S} \subseteq \mathbb{R}^n, convex function f:nf: \mathbb{R}^n \rightarrow \mathbb{R}, we want to minimize f(𝐱)f(\mathbf{x}) over 𝐱𝒮\mathbf{x} \in \mathcal{S}

Algorithm:

Proof

By Grünbaum's theorem, cut the volume of the search space by constant every step. #incomplete


idea: minimizing convex function over convex set using “natural plane-cutting method”

center of gravity of convex set 𝒮\mathcal{S} defined as: c=x𝒮xdxvol(𝒮)=x𝒮xdxx𝒮1dxc = \frac{\int_{x \in \mathcal{S}} x \, dx}{\text{vol}(\mathcal{S})} = \frac{\int_{x \in \mathcal{S}} x \, dx}{\int_{x \in \mathcal{S}} 1 dx} Additionally, for two convex sets 𝒜\mathcal{A} and \mathcal{B}, the intersection 𝒜\mathcal{A} \cap \mathcal{B} is also convex. To see this, consider two points 𝐱,𝐲𝒜\mathbf{x}, \mathbf{y} \in \mathcal{A} \cap \mathcal{B}. Then for any λ(0,1)\lambda \in (0,1), we have λ𝐱+(1λ)𝐲𝒜\lambda \mathbf{x} + (1-\lambda) \mathbf{y} \in \mathcal{A}

because 𝐱,𝐲\mathbf{x},\mathbf{y} are in 𝒜\mathcal{A} and λ𝐱+(1λ)𝐲\lambda \mathbf{x} + (1-\lambda) \mathbf{y} \in \mathcal{B}

because 𝐱,𝐲\mathbf{x},\mathbf{y} are in \mathcal{B}.


Drawbacks: computing centroid in general is hard, #P-hard when 𝒮\mathcal{S} is intersection of half-spaces (polytope)

Hence, consider Ellipsoid method


References:

  1. A. Y. Levin. On an algorithm for the minimization of convex functions over convex functions. Soviet Mathematics Doklady, 160(1244–1247), 1965. https://www.mathnet.ru/php/archive.phtml?wshow=paper&jrnid=dan&paperid=30770&option_lang=eng
  2. D. J. Newman. Location of the maximum on unimodal surfaces. J. ACM, 12(3):395–398, July 1965.
  3. https://www.chrismusco.com/amlds2023/notes/lecture09.html
  4. https://www.cs.cmu.edu/~anupamg/advalgos17/scribes/lec16.pdf